package com.hjm.project.salaryPlan.agentActivityDetails.domain;

import com.hjm.framework.web.domain.BaseEntity;
import java.math.BigDecimal;
import com.hjm.framework.aspectj.lang.annotation.Excel;
import com.hjm.project.salaryPlan.agentActivity.domain.AgentActivity;
import lombok.Data;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

/**
 * 活动参与人员明细对象 agent_activity_details
 * 
 * @author maker-platform
 * @date 2022-04-07
 */
@Data
public class AgentActivityDetails extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 代理商编号 */
    @Excel(name = "代理商编号")
    private String agentNum;

    /** 代理商名称 */
    @Excel(name = "代理商名称")
    private String agentName;

    /** 活动参与时间 */
    @Excel(name = "活动参与时间")
    private String createDate;

    /** 配置人 */
    @Excel(name = "配置人")
    private String createMan;

    /** 1、开启 2、关闭 */
    @Excel(name = "1、开启 2、关闭")
    private Integer status;

    /** 当前服务商下允许参与的人员档位限制,如(1,2,3,4) */
    @Excel(name = "当前服务商下允许参与的人员档位限制,如(1,2,3,4)")
    private String levelScope;

    /** 考核标准1：活动月当月开通新增有效商户大于等于?户 */
    @Excel(name = "考核标准1：活动月当月开通新增有效商户大于等于?户")
    private String norm1;

    /** 考核标准2：所有开通商户中，在活动月次月，即考核月，需有大于等于总户数的 ?%  且满足交易量（计算贷记卡+闪付扫码交易）大于等于两万。 */
    @Excel(name = "考核标准2：所有开通商户中，在活动月次月，即考核月，需有大于等于总户数的 ?%  且满足交易量", readConverterExp = "计=算贷记卡+闪付扫码交易")
    private String norm2;

    /** 奖励:满足标准1和标准2会在考核月的次月发放?元的底薪奖励 */
    @Excel(name = "奖励:满足标准1和标准2会在考核月的次月发放?元的底薪奖励")
    private BigDecimal award;

    /** 主键 */
    private Integer id;

    /** agent_activity 表主键 */
    private Integer actId;

    /** 活动实体  */
    private AgentActivity agentActivity;

    /** 开始档位  */
    private String startGrade;

    /** 结束档位  */
    private String endGrade;

    /** 审核备注  */
    private String note;

    /** 0 未上送 1 待审核 2 审核通过 3 审核打回  */
    private Integer auditStatus;












    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("agentNum", getAgentNum())
            .append("agentName", getAgentName())
            .append("createDate", getCreateDate())
            .append("createMan", getCreateMan())
            .append("status", getStatus())
            .append("levelScope", getLevelScope())
            .append("norm1", getNorm1())
            .append("norm2", getNorm2())
            .append("award", getAward())
            .append("id", getId())
            .toString();
    }
}
